<template>
	<view>
		{{distance}}
	</view>
</template>

<script>
	export default {
		name:"altitude",
		props:{
			lat:{
				type:Number,
				default:0
			},
			lng:{
				type:Number,
				default:0
			},
		},
		data() {
			return {
				distance:0
			};
		},
		mounted() {
			let that=this
			// 获取当前位置
			uni.getLocation({
				success(res){
					console.log('res',res)
					let lat1=res.latitude
					let lng1=res.longitude
					that.distance=that.getDistance(lat1,lng1,that.lat,that.lng)
				}
			})
		},
		methods:{
			getDistance(lat1, lng1, lat2, lng2) {
				console.log(lat1, lng1, lat2, lng2)
			    lat1 = lat1 || 0;
			    lng1 = lng1 || 0;
			    lat2 = lat2 || 0;
			    lng2 = lng2 || 0;
			
			    var rad1 = lat1 * Math.PI / 180.0;
			    var rad2 = lat2 * Math.PI / 180.0;
			    var a = rad1 - rad2;
			    var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
			    var r = 6378137;
			    var distance = r * 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(rad1) * Math.cos(rad2) * Math.pow(Math.sin(b / 2), 2)));
			// 米转千米
			        if (distance >= 1000) {
			            distance = (distance / 1000).toFixed(2) + 'km'
			        } else {
			            distance = distance.toFixed(2) + 'm'
			        }
			    
			    return distance;
			}
		}
	}
</script>

<style>

</style>